package com.ruoyi.contract.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 合同计划对象 contract_plan_info
 *
 * @author ruoyi
 * @date 2022-08-31
 */
public class ContractPlanInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 计划编码
     */
    private String planId;

    /**
     * 计划名称
     */
    @Excel(name = "计划名称")
    private String planName;

    /**
     * 父计划编号
     */
    @Excel(name = "父计划编号")
    private String parentPlanId;

    /**
     * 计划开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planBeginTime;

    /**
     * 计划结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planEndTime;

    /**
     * 合同编号
     */
    @Excel(name = "合同编号")
    private String contractNo;

    public void setPlanId(String planId) {
        this.planId = planId;
    }

    public String getPlanId() {
        return planId;
    }

    public void setPlanName(String planName) {
        this.planName = planName;
    }

    public String getPlanName() {
        return planName;
    }

    public void setParentPlanId(String parentPlanId) {
        this.parentPlanId = parentPlanId;
    }

    public String getParentPlanId() {
        return parentPlanId;
    }

    public void setPlanBeginTime(Date planBeginTime) {
        this.planBeginTime = planBeginTime;
    }

    public Date getPlanBeginTime() {
        return planBeginTime;
    }

    public void setPlanEndTime(Date planEndTime) {
        this.planEndTime = planEndTime;
    }

    public Date getPlanEndTime() {
        return planEndTime;
    }

    public void setContractNo(String contractNo) {
        this.contractNo = contractNo;
    }

    public String getContractNo() {
        return contractNo;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("planId", getPlanId())
                .append("planName", getPlanName())
                .append("parentPlanId", getParentPlanId())
                .append("planBeginTime", getPlanBeginTime())
                .append("planEndTime", getPlanEndTime())
                .append("createTime", getCreateTime())
                .append("createBy", getCreateBy())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .append("contractNo", getContractNo())
                .toString();
    }
}
